package com.qianyu.core.entity.bean;

import com.baomidou.mybatisplus.annotation.TableName;
import com.qianyu.core.entity.base.BaseBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

/**
 * 任务条目
 *
 * @TableName tb_cron_task_item
 */
@Data
@ApiModel(value = "任务管理")
@TableName("tb_cron_task_item")
public class CronTaskItem extends BaseBean {

    /**
     * 用户id
     */
    @NotNull(message = "[用户id]不能为空")
    @ApiModelProperty("用户id")
    private Long userId;
    /**
     * 任务id
     */
    @NotNull(message = "[任务id]不能为空")
    @ApiModelProperty("任务id")
    private Long taskId;
    /**
     * 账号
     */
    @NotNull(message = "[账号]不能为空")
    @ApiModelProperty("账号")
    private Long accountId;
    /**
     * 活动id
     */
    @NotNull(message = "[活动id]不能为空")
    @ApiModelProperty("活动id")
    private Long actId;
    /**
     * 大区id
     */
    @NotNull(message = "[大区id]不能为空")
    @ApiModelProperty("大区id")
    private Long areaId;
    /**
     * 状态:0=待执行,1=执行完成,2=执行错误
     */
    @NotNull(message = "[状态:0=待执行,1=执行完成,2=执行错误]不能为空")
    @ApiModelProperty("状态:0=待执行,1=执行完成,2=执行错误")
    private Integer status;
    /**
     * 最大重试次数
     */
    @NotNull(message = "[最大重试次数]不能为空")
    @ApiModelProperty("最大重试次数")
    private Integer retryNum;
    /**
     * 备注
     */
    @NotBlank(message = "[备注]不能为空")
    @Size(max = 500, message = "编码长度不能超过500")
    @ApiModelProperty("备注")
    private String remark;
    /**
     * 执行次数
     */
    @NotNull(message = "[执行次数]不能为空")
    @ApiModelProperty("执行次数")
    private Integer execNum;
    /**
     * 是否结束:0=否,1=是
     */
    @NotNull(message = "[是否结束:0=否,1=是]不能为空")
    @ApiModelProperty("是否结束:0=否,1=是")
    private Integer isEnd;
    /**
     * 最新响应
     */
    @Size(max = -1, message = "编码长度不能超过-1")
    @ApiModelProperty("最新响应")
    private String respond;
    /**
     * 响应码
     */
    @NotBlank(message = "[响应码]不能为空")
    @Size(max = 12, message = "编码长度不能超过12")
    @ApiModelProperty("响应码")
    private String respondCode;
    /**
     * 响应历史
     */
    @Size(max = -1, message = "编码长度不能超过-1")
    @ApiModelProperty("响应历史")
    private String respondHistory;
    /**
     * 最新执行时间
     */
    @NotNull(message = "[最新执行时间]不能为空")
    @ApiModelProperty("最新执行时间")
    private Integer execTime;
}
